package org.dormi.learn.core;

/**
 * 考虑再三，这种方式实现 IAdaptable，有些问题：
 * 对每个instance都需要注册，这是不符合实际的
 * <p>
 * 考虑用 Google-guice去进行处理
 *
 * @author : dormi330
 * @version : 1.0
 */

import org.eclipse.core.runtime.IAdaptable;

import java.util.HashMap;
import java.util.Map;

public class BaseEntityV2 implements IAdaptable {

    private Map<Class, IAdaptable> map2Class = new HashMap<>();

    public <T> void registerAdapter(Class<T> clazz, IAdaptable iAdaptable) {
        map2Class.put(clazz, iAdaptable);
    }

    @Override
    public Object getAdapter(Class adapter) {
        return map2Class.get(adapter);
    }
}
